Engine control devices control the functions of a motor vehicle, such as fuel injection, moment of ignition, vehicle immobilizer, and so on. The engine control device has a microcontroller that executes a predetermined program, and a memory in which particular vehicle parameters used in this program or the like are stored, for example. The control device controls function units (e.g., the metering system for the fuel injection of an engine), which are connected to the control device via a data bus, for example.
During the development phase of a control device, the control device is connected to an external development tool in addition to the function units of the vehicle (or to emulators that act as these function units vis-à-vis the control device). This development tool enables the developer to monitor and influence in detail the processing of the control program by the processor. To this end, the developer examines and modifies the vehicle parameters stored in the memory to analyze the behavior of the system controlled by the control device, for example. Thus, during the development phase, significantly larger quantities of data are exchanged with the control device than is the case when the completed control device is used later, so that a larger bandwidth is required for the data transmission.
Data may be transmitted between the control device and the development tool via the same data bus that is also used by the control device to communicate with the function units. For this purpose, the CAN interface (Controller Area Network) has established itself as an interface in the automotive sector. The associated CAN protocol is very flexible and makes it possible to add further nodes (e.g., function units or development tool) on the CAN bus without any problems. For communicating via the CAN bus, a priority-based bit arbitration takes place in which a unique priority is assigned to every message, this requiring a bidirectional transmission of data. Furthermore, the CAN protocol is fault-tolerant, which on the other hand calls for a significant protocol overhead, which leads to a restriction of the bandwidth available for data transmission.
Furthermore, the available bandwidth is already substantially exhausted by communication with the function units so that sufficient transmission capacity is no longer available for communication with the development tool. This may result in a delay in the transmission of data to the development tool, which falsely creates the impression of a malfunction of the control device. To be sure, it is possible to accelerate the transmission to the development tool by assigning it a sufficiently high priority on the bus. But, on the other hand, the result of this is that the requirements for the real-time response of the communication between control device and function units are not fulfilled reliably.
For providing a larger transmission capacity, DE 103 03 490 A1 proposes providing to the processor of the transmission device a second interface designed as a serial interface (e.g., USB or Fire-Wire interface) that is able to be used only for communication with the external development tool. During the development phase, large quantities of data may be exchanged via this interface without impairing the time response in communication via the first interface. However, providing the second interface leads to higher costs, so that ultimately such an engine control device is able to be used only as a prototype for the development phase for control devices; however, is not suitable for mass production.